﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Practices.EnterpriseLibrary.Validation;
using Microsoft.Practices.EnterpriseLibrary.Validation.Validators;

namespace Reconciliation.Domain
{
    public class Order
    {
        public Order()
        {
            Cashpoint = new Cashpoint();
            User = new User();
            Location = new Location();
            Bank = new Bank();
            Invoice = new Invoice();
            Cpc = new Cpc();
            OrdreDetailList = new List<OrderDetail>();
        }

        public int OrderID { get; set; }        
        public Cashpoint Cashpoint { get; set; }
        public User User { get; set; }
        public string OrderReferenceID { get; set; }
        public string OrderType { get; set; }       
        public DateTime DeliveryDate { get; set; }
        public DateTime CollectionDate { get; set; }
        public Location Location { get; set; }
        public Bank Bank { get; set; }
        public Cpc Cpc { get; set; }
        public Invoice Invoice { get; set; }
        public DateTime OrderDate { get; set; }
        public List<OrderDetail> OrdreDetailList { get; set; }
        public Case Case { get; set; }
        public string Status { get; set; }

        //Runtime Attributes
        public decimal CitExpectedReturn { get; set; }
        public decimal CitPhysicalReturn { get; set; }
        public decimal? CitDifference { get; set; }

        public decimal? ClientDifference {get; set;}
    }
}
